package org.jsola.hr.entity;

import lombok.Data;
import lombok.EqualsAndHashCode;
import org.jsola.core.entity.BaseDeleteDO;
import org.jsola.core.entity.Key;

import javax.persistence.Table;

/**
 * 转账批次(微信)
 *
 * @author zhr
 */
@EqualsAndHashCode(callSuper = true)
@Data
@Table(name = "hr_transfer_accounts_vx_batch")
@Key(UUID = true)
public class TransferAccountsVxBatchDO extends BaseDeleteDO<String> {

    private static final long serialVersionUID = 1L;

    /**
     * 微信支付分配的服务商商户号
     */
    private String spMchid;
    /**
     * 微信支付分配的特约商户号
     */
    private String subMchid;
    /**
     * 微信支付批次单号，微信商家转账系统返回的唯一标识
     */
    private String batchId;
    /**
     * 批次状态，枚举值：WAIT_PAY：待付款。ACCEPTED：已受理。PROCESSING：转账中。FINISHED：已完成。CLOSED：已关闭
     */
    private String batchStatus;
    /**
     * 批次类型，枚举值：API：API方式发起。WEB：页面方式发起
     */
    private String batchType;
    /**
     * 批次名称
     */
    private String batchName;
    /**
     * 批次备注
     */
    private String batchRemark;
    /**
     * 批次关闭原因
     */
    private String closeReason;
    /**
     * 转账总金额  单位为“分”
     */
    private Integer totalAmount;
    /**
     * 转账总笔数  转账批次单最多发起三千笔转账
     */
    private Integer totalNum;
    /**
     * 批次创建时间 格式为YYYY-MM-DDTHH:mm:ss.sss+TIMEZONE
     */
    private String createTime;
    /**
     * 批次更新时间 格式为YYYY-MM-DDTHH:mm:ss.sss+TIMEZONE
     */
    private String updateTime;
    /**
     * 成功笔数
     */
    private Integer successNum;
    /**
     * 转账成功金额 单位为“分”
     */
    private Integer successAmount;
    /**
     * 失败笔数
     */
    private Integer failNum;
    /**
     * 转账失败金额 单位为“分”
     */
    private Integer failAmount;
    /**
     * 批量转账用途 GOODSPAYMENT：货款,COMMISSION：佣金,REFUND：退款,REIMBURSEMENT：报销,FREIGHT：运费,OTHERS：其他
     */
    private String transferPurpose;



}

